package xconsole

import (
	"fmt"

	"github.com/gookit/color"
)

// 输出详情信息【正常字体】
//
//	msg	输出内容
func Info(msg ...any) {
	fmt.Println(msg...)
}

// 输出详情信息【正常字体】
//
//	format	输出格式（此方法不会输出\n换行，请手动追加换行\n）
//	values	输出格式对应字体
func Infof(format string, values ...any) {
	fmt.Printf(format, values...)
}

// 输出错误信息【红色字体】
//
//	msg	待输出的错误信息
func Error(msg ...any) {
	color.Errorln(msg...)
}

// 输出详情信息【错误字体】
//
//	format	输出格式（此方法不会输出\n换行，请手动追加换行\n）
//	values	输出格式对应字体
func Errorf(format string, values ...any) {
	color.Errorf(format, values...)
}

// 输出成功信息【绿色字体】
//
//	msg	待输出的错误信息
func Success(msg ...any) {
	color.Successln(msg...)
}

// 输出成功信息【绿色字体】
//
//	format	输出格式（此方法不会输出\n换行，请手动追加换行\n）
//	values	输出格式对应字体
func Successf(format string, values ...any) {
	color.Successf(format, values...)
}

// 输出警告信息【黄色字体】
//
//	msg	待输出的错误信息
func Warring(msg ...any) {
	color.Warnln(msg...)
}

// 输出警告信息【黄色字体】
//
//	format	输出格式（此方法不会输出\n换行，请手动追加换行\n）
//	values	输出格式对应字体
func Warringf(format string, values ...any) {
	color.Warnf(format, values...)
}

// 输出调试信息【蓝色字体】
//
//	msg	待输出的错误信息
func Debug(msg ...any) {
	color.Note.Println(msg...)
}

// 输出调试信息【蓝色字体】
//
//	format	输出格式（此方法不会输出\n换行，请手动追加换行\n）
//	values	输出格式对应字体
func Debugf(format string, values ...any) {
	color.Notice.Printf(format, values...)
}
